﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;

namespace Brain.General
{
    public class GamerControllerOptions
    {
        /// <summary>
        /// If the Camera should smooth itself
        /// </summary>
        public bool UseCameraSmoothing { get; set; }

        public CameraType CameraType { get; set; }
        public float FarPlane { get; set; }
        public float NearPlane { get; set; }

        public float FOV { get; set; }
        public float AspectRatio { get; set; }

        public float DistanceFromPlayer = 20f;
        public Vector3 OffsetFromTarget = new Vector3(0, 10, 0);
        public bool TransformOffset = true;



        /// <summary>
        /// If the player is able to crouch
        /// </summary>
        public bool CanCrouch = true;

        /// <summary>
        /// If the player needs to hold the crouch
        /// button to stay crouched
        /// </summary>
        public bool CrouchHold = false;

        /// <summary>
        /// If the player can run
        /// </summary>
        public bool CanRun = true;

        public bool ThumbstickRotatesCamera = false;
        public float Sensitivity = 1f;

#if XBOX || WINDOWS
        public Xbox360Options XboxKeys;
#endif
#if WINDOWS
        public bool MouseRotatesCamera = false;
        public WindowsOptions WindowsKeys;
#endif
    }
}
